#event-campaign_common a{
	transform-style: preserved-3d;
	transition: all 180ms;
}
#event-campaign_common a:hover{
	opacity: .7;
}

#content .sec-page-title .field-title, #content .sec-page-title a {
	font-family: 'Noto Sans JP', system-ui, -apple-system, BlinkMacSystemFont,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','游ゴシック','YuGothic', Meiryo, sans-serif;
}

.pdf_link {
	text-align: center;
	margin-top: 40px;
}
.pdf_link a {
	color: inherit;
	font-size: 16px;
	text-decoration: underline;
}


@media (min-width: 897px){

	.sp{
		display: none;
	}
	#onepoint_lesson{
		width: 100%;
		background-color: #fff000;
	}
	#main_content{
		max-width: 1300px;
		margin: 0 auto;
		overflow: hidden;
	}
	#main_content > .inner{
		width: 1128px;
		margin: 0 auto;
		padding: 60px 0;
	}
	#main_content > .inner img{
		max-width: 100%;
		width: auto;
		margin: 0 auto;
	}
	.animate{
		opacity: 0;
	}

	.btn_shopsearch {
		position: fixed;
		right: 40px;
		bottom: 40px;
		transition: transform 0.25s cubic-bezier(0.090, 0.415, 0.425, 1.470);
		z-index: 1;
	}
	.btn_shopsearch:hover {
		transform: scale(1.1);
	}
	#main_content .kv {
		background: url(../img/kv_frame_pc.png) no-repeat;
		background-size: 100% 100%;
		position: relative;
		padding: 100px;
		text-align: center;
	}
	#main_content .kv .ribon img {
		width: 235px;
		position: absolute;
		top: -60px;
		left: 60px;
	}
	#main_content .kv .title_logo img {
		max-width: 601px;
		margin: auto;
	}
	#main_content .kv a {
		position: absolute;
		right: 40px;
		bottom: -35px;
		transition: transform 0.25s cubic-bezier(0.090, 0.415, 0.425, 1.470);
	}
	#main_content .kv a:hover {
		transform: scale(1.1);
	}
	#main_content .lead {
		text-align: center;
		margin: 65px 0 50px;
	}
	#main_content .point {
		text-align: center;
		margin-bottom: 50px;
	}
	#main_content .reserve {
		text-align: center;
		margin-bottom: 100px;
	}
	#main_content .support {
		text-align: center;
		margin-bottom: 30px;
	}
	#main_content .lesson {
		text-align: center;
		margin-bottom: 80px;
	}
	#main_content .flow {
		text-align: center;
		margin-bottom: 15px;
	}
	#main_content .attention {
		display: flex;
		flex-wrap: wrap;
		max-width: 960px;
		margin: auto;
	}
	#main_content .attention li {
		width: 50%;
		font-size: 16px;
		font-weight: 600;
		line-height: 26px;
	}

	#store_list{
		width: 100%;
		margin: 100px auto 0;
	}
	#store_list h2{
		background-color: #dc080f;
		color: #fff;
		text-align: center;
		margin: 0 0 53px;
		padding: 0 0;
		font-size: 30px;
		line-height: 55px;
		letter-spacing: 0.05em;
	}
	#store_list .inner{
		padding: 0 74px;
	}
	#store_list .store{
		position: relative;
		font-size: 22px;
		line-height: 25px;
		padding-left: 20px;
		letter-spacing: 0.05em;
		margin: 0 0 20px;
	}
	#store_list .store:before{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 4px;
		height: 25px;
		background-color: #dc080f;
	}
	#store_list ul li{
		font-size: 0;
		margin-bottom: 50px;
	}
	#store_list ul li:last-child{
		margin-bottom: 0;
	}
	#store_list .btn_store{
		display: inline-block;
		position: relative;
		width: 290px;
		height: 43px;
		box-sizing: border-box;
		border: 2px solid #dc080f;
		border-radius: 21.5px;
		margin-right: 55px;
		font-size: 18px;
		font-weight: bold;
		line-height: 40px;
		color: #dc080f;
		text-align: center;
	}
	#store_list .btn_store:before{
		content: '';
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translateY(-50%);
		width: 17px;
		height: 17px;
		background-color: #dc080f;
		border-radius: 8.5px;
	}
	#store_list .btn_store:after{
		content: '';
		position: absolute;
		top: 50%;
		right: 14px;
		transform: translateY(-50%);
		border-top: 4.5px solid transparent;
		border-bottom: 4.5px solid transparent;
		border-left: 7px solid #fff;
	}

	.pdf_link {
		text-align: center;
		margin-top: 40px;
	}
	.pdf_link a {
		color: inherit;
		font-size: 16px;
		text-decoration: underline;
	}

	.video_area {
		max-width: 960px;
		margin: 0 auto 50px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.video_area .video_box {
		width: 224px;
		margin-bottom: 50px;
	}
	.video_area .video_title {
		margin-bottom: 10px !important;
		margin-top: 0 !important;
		height: 49px;
	}
	.video_area .video_title img {
		display: inline !important;
	}
	.video_area .lesson01 {
		width: 182px !important;
	}
	.video_area .lesson02 {
		width: 145px !important;
	}
	.video_area .lesson03 {
		width: 163px !important;
	}
	.video_area .lesson04 {
		width: 182px !important;
	}
	.video_area .lesson05 {
		width: 201px !important;
	}
	.video_area .lesson06 {
		width: 163px !important;
	}
	.video_area .lesson07 {
		width: 151px !important;
	}
	.video_area .lesson08 {
		width: 182px !important;
	}
	.video_area .thumbnail {
		margin-bottom: 10px;
		cursor: pointer;
		border: none;
		border-radius: 0;
		background: none;
	}
	.video_area .thumbnail img {
		width: 100%;
	}
	.video_area .video_box p {
		font-size: 16px;
		letter-spacing: 0.05em;
		line-height: 22px;
	}


	.modal2.movie {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(0,0,0,0.9);
		z-index: 201;
		visibility: hidden;
		opacity: 0;
		transition: all 300ms 0s ease-out
	}

	.modal2.movie.on {
		visibility: visible;
		opacity: 1
	}

	.modal2.movie .close {
		position: absolute;
		top: 14px;
		right: 14px;
		width: 56px;
		height: 56px;
		background: url("/-/media/Project/Dmc Tenants/DD Tenant/shared/Event/onepoint_lesson/img/modal_close.png") no-repeat center center;
		cursor: pointer
	}

	.modal2.movie .movie_wrap {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%)
	}

}

@media (max-width: 898px){
	body {
		padding-bottom: 16vw;
	}

	.pc{
		display: none;
	}

	#onepoint_lesson{
		width: 100%;
		background-color: #fff000;
	}
	#main_content{
		width: 100%;
	}
	#main_content > .inner{
		width: auto;
		margin: 0 auto;
		padding: 34px 19px;
	}
	#main_content > .inner img{
		max-width: 100%;
		width: auto;
		margin: 0 auto;
	}

	.animate{
		opacity: 0;
	}

	.btn_shopsearch {
		position: fixed;
		left: 0;
		bottom: 0;
		transition: transform 0.25s cubic-bezier(0.090, 0.415, 0.425, 1.470);
		z-index: 1;
	}
	.btn_shopsearch:hover {
		transform: scale(1.1);
	}
	.btn_shopsearch img {
		vertical-align: middle;
	}

	#main_content .kv {
		background: url(../img/kv_frame_sp.png) no-repeat;
		background-size: 100% 100%;
		position: relative;
		padding: 16.9% 9.8% 13.3%;
		text-align: center;
	}
	#main_content .kv .ribon {
		margin: 0
	}
	#main_content .kv .ribon img {
		width: 141px;
		position: absolute;
		top: -34px;
		left: 0;
		right: 0;
		margin: 0 auto;
	}
	#main_content .kv .title_logo {
		margin: 0 !important;
	}
	#main_content .kv .title_logo img {
		max-width: 100%;
	}
	#main_content .lead {
		text-align: center;
		margin: 25px 0;
		padding: 0 19px;
	}
	#main_content .point {
		text-align: center;
		margin-bottom: 25px;
		padding: 0 19px;
	}
	#main_content .reserve {
		text-align: center;
		margin-bottom: 50px;
	}
	#main_content .reserve img {
		width: 238px;
	}
	#main_content .support {
		text-align: center;
		margin-bottom: 15px;
		padding: 0 9px;
	}
	#main_content .lesson {
		text-align: center;
		margin-bottom: 50px;
		padding: 0 19px;
	}
	#main_content .flow {
		text-align: center;
		margin-bottom: 15px;
		padding: 0 19px;
	}
	#main_content .attention {
		padding: 0 19px;
	}
	#main_content .attention li {
		font-size: 13px;
		font-weight: 600;
		line-height: 18px;
		padding-left: 1em;
		text-indent: -1em;
	}

	#store_list{
		margin: 13.33333333333333vw 0 0;
		padding: 0 5vw 10vw;
	}
	#store_list h2{
		height: 9.333333333333333vw;
		background-color: #e40012;
		color: #fff;
		text-align: center;
		margin: 0 0 20px;
		padding: 0;
		font-size: 20px;
		line-height: 9.333333333333333vw;
	}
	#store_list .store{
		position: relative;
		font-size: 15px;
		line-height: 14px;
		padding-left: 12px;
		letter-spacing: 0.05em;
		margin: 0 0 20px;
	}
	#store_list .store:before{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 3px;
		height: 14px;
		background-color: #e40012;
	}
	#store_list ul li{
		font-size: 0;
		margin-bottom: 30px;
	}
	#store_list ul li:last-child{
		margin-bottom: 0;
	}
	#store_list .btn_store{
		display: block;
		position: relative;
		width: 100%;
		height: 50px;
		box-sizing: border-box;
		border: 2px solid #e40012;
		border-radius: 4.5px;
		font-size: 17px;
		font-weight: bold;
		line-height: 46px;
		color: #e40012;
		text-align: center;
	}
	#store_list .btn_store:before{
		content: '';
		position: absolute;
		top: 50%;
		right: 20px;
		transform: translateY(-50%);
		width: 17px;
		height: 17px;
		background-color: #e40012;
		border-radius: 8.5px;
	}
	#store_list .btn_store:after{
		content: '';
		position: absolute;
		top: 50%;
		right: 24px;
		transform: translateY(-50%);
		border-top: 4.5px solid transparent;
		border-bottom: 4.5px solid transparent;
		border-left: 7px solid #fff;
	}
	#store_list .btn_store:first-of-type{
		margin-bottom: 15px;
	}

	.pdf_link {
		text-align: center;
		margin-top: 40px;
	}
	.pdf_link a {
		color: inherit;
		font-size: 12px;
		text-decoration: underline;
	}


	.video_area {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin-bottom: 30px;
		padding: 0 17px;
	}
	.video_area .video_box {
		width: 47.5%;
		margin-bottom: 23px;
	}
	.video_area .video_title {
		margin-bottom: 2vw !important;
		margin-top: 0 !important;
		height: 9vw;
	}
	.video_area .video_title img {
		display: inline !important;
	}
	.video_area .lesson01 {
		width: 81.25% !important;
	}
	.video_area .lesson02 {
		width: 64.73% !important;
	}
	.video_area .lesson03 {
		width: 72.76% !important;
	}
	.video_area .lesson04 {
		width: 81.25% !important;
	}
	.video_area .lesson05 {
		width: 89.73% !important;
	}
	.video_area .lesson06 {
		width: 72.76% !important;
	}
	.video_area .lesson07 {
		width: 67.41% !important;
	}
	.video_area .lesson08 {
		width: 81.25% !important;
	}
	.video_area .thumbnail {
		margin-bottom: 5px;
		cursor: pointer;
		padding: 0;
		border: none;
	}
	.video_area .thumbnail img {
		width: 100%;
	}
	.video_area .video_box p {
		font-size: 2.8vw !important;
		letter-spacing: 0.05em;
		line-height: 1.36 !important;
	}


	.modal2.movie {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(0,0,0,0.9);
		z-index: 201;
		visibility: hidden;
		opacity: 0;
		transition: all 300ms 0s ease-out
	}

	.modal2.movie.on {
			visibility: visible;
			opacity: 1
	}

	.modal2.movie .close {
		position: absolute;
		top: 14px;
		right: 14px;
		width: 28px;
		height: 28px;
		background: url("/-/media/Project/Dmc Tenants/DD Tenant/shared/Event/onepoint_lesson/img/modal_close.png") no-repeat center center;
		background-size: 100% auto
	}

	.modal2.movie .movie_wrap {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%)
	}

	.modal2.movie .movie_wrap iframe {
		width: 100vw;
		height: 56.25vw
	}

}
